Skip to main content

Provisional Credit

The Provisional Credit API enables financial institutions to temporarily credit a customer's account during a dispute investigation involving unauthorized or incorrect debit transactions. This API allows banks or business operations teams to initiate a provisional credit process, ensuring regulatory compliance and enhancing customer trust by providing timely resolution while the dispute is under review..

Method: POST​

{{URL}}/rpc/paymentv2

Example​

Request Parameters
ParameterDescription
method
Mandatory
String
RPC method name
Constant Value : "ledger.transfer"
id
Mandatory
String
Unique ID for the request
payload.channel
Mandatory
String
Payment channel through which the transaction is processed.
Constant Value : "API"
payload.transactionType
Mandatory
String
Type of transaction.
Constant value : "PROVISIONAL_CREDIT"
payload.transactionDateTime
Optional (in struct it is not required but if it is empty posted date will be empty)
String
Date and time of the transaction initiation (YYYY-MM-DD HH:MM:SS)
Sample Value : "2021-01-19 06:20:25"
payload.reference
Mandatory
String
Unique reference ID of the transaction.
Sample Value : "65323564567089"
payload.reason
Optional
String
Purpose of the transaction.
Sample value : "Dispute for Txn-QA00000009992007"
payload.transactionAmount.amount
Mandatory
String
Transaction amount in cents.
payload.transactionAmount.currency
Mandatory
String
Type of currency used.
Sample Value : "USD"
payload.creditorAccount
Mandatory
Object
Account details of the creditor
payload.creditorAccount.identification
Mandatory
String
Account number of creditor
payload.creditorAccount.identificationType
Mandatory
String
Type of account identification.
Sample Value : "ACCOUNT_NUMBER"
params.api.signature
Mandatory
String
Sign the request payload (params.payload) using private key.
Sample Value: "MEQCIAbpxHpdOyBEVlmxPYv7m4Z1OvWJJYw7g7u3GE3T9nmvAiBjKHckSvb1M6O4t7FeWsn2z9Y3dMeYn3HyX/k28ek/Dw=="
params.api.credential
Mandatory
String
Basic (space) [("<Username>:<apiKey>") as Base64 encoded value] to be provided
Sample Value: "Basic bmF2eWEubitlbXBAbmV0eGQuY29tOmY1OWIwY2NlOTU4ZTQ1YTc4MGVhZWIzYWVjOWVjZDAx"
params.api.apiKey
Mandatory
String
API key is provided at the time of device registration.
Sample Value : "f59b0cce958e45a780eaeb3aec9ecd01"

curl --location 'http://localhost:5010/PL/rpc/paymentv2' \
--header 'signature: MEYCIQD7NCB1pEpzlVqSI/iiZF75iZ6M+KsNpjVDbMdm/lj/MAIhANdWP5t69WsbBGDrPbNcXoRDsLK1ON9kw2X4h2tLUksJ' \
--header 'Content-Type: application/json' \
--data '{"method":"ledger.transfer","id":"1","params":
{"payload":{"channel":"API","transactionType":"PROVISIONAL_CREDIT","transactionDateTime":"2025-05-05 06:20:25","reference":"65323564567089","reason":"Dispute for Txn-QA00000009992007","transactionAmount":{"amount":"300","currency":"USD"},"creditorAccount":{"identification":"874563222294167","identificationType":"ACCOUNT_NUMBER"}},"api":{"credential":"Basic bGVnYWxyZXBAZ21haWwuY29tOjFmZWU2NzQ2MzMxZjQ5YzdhOTQ2OTI5NDYxMWMyZWNj","signature":"MEUCIQDaR0g6Czl/Xo8fRqLIz2sjAPO+FO+8Jr5uoV19Gt1BzAIgHNXzaIOhoPfArRfb86GqMKzFTHOaKles3ykSBvnYAFY=","apiKey":"1fee6746331f49c7a9469294611c2ecc"}}}'

Body​

{
"method": "ledger.transfer",
"id": "1",
"params": {
"payload": {
"channel": "API",
"transactionType": "PROVISIONAL_CREDIT",
"transactionDateTime": "2025-05-05 06:20:25",
"reference": "65323564567089",
"reason": "Dispute for Txn-QA00000009992007",
"transactionAmount": {
"amount": "300",
"currency": "USD"
},
"creditorAccount": {
"identification": "874563222294167",
"identificationType": "ACCOUNT_NUMBER"
}
},
"api": {
"credential": "Basic bGVnYWxyZXBAZ21haWwuY29tOjFmZWU2NzQ2MzMxZjQ5YzdhOTQ2OTI5NDYxMWMyZWNj",
"signature": "MEUCIQDaR0g6Czl/Xo8fRqLIz2sjAPO+FO+8Jr5uoV19Gt1BzAIgHNXzaIOhoPfArRfb86GqMKzFTHOaKles3ykSBvnYAFY=",
"apiKey": "1fee6746331f49c7a9469294611c2ecc"
}
}
}

Response: 200​

Response Parameters
ParameterDescription
api.typeString
Acknowledgment type
api.referenceString
Reference number
api.dateTimeString
Response timestamp
account.accountIdString
Credited account ID
account.balanceCentsInteger
Updated account balance in cents
account.statusString
Enum
Status of the account
Valid values:
- ACTIVE: The account is Active for all transactions.
- DORMANT: Only inbound credit transactions are allowed. The account will automatically transition to 'ACTIVE' when an inbound credit transaction occurs.
- SUSPENDED: No transactions are allowed in this state. The account must be manually changed to Active, typically due to compliance issues. It can also be reactivated based on a court order.
- CLOSED: The account is permanently closed, and no transactions are allowed. Once an account is in this state, it cannot be reactivated.
Sample value: "ACTIVE"
transactionNumberString
System-generated transaction number
transactionStatusString
Status of the Transaction Sample Value : "COMPLETED"
transactionAmountCentsInteger
Amount credited in cents
originalRequestBase64String
Base64-encoded original request
processIdString
Unique process identifier
header.referenceString
Transaction reference
header.apiKeyString
Echoed API Key
header.signatureString
Echoed Signature
{
"id": "1",
"result": {
"api": {
"type": "PROVISIONAL_CREDIT_ACK",
"reference": "65323564567089",
"dateTime": "2025-08-11 12:07:17"
},
"account": {
"accountId": "200566639889443",
"balanceCents": 781485,
"status": "ACTIVE"
},
"transactionNumber": "QA00000002412007",
"transactionStatus": "COMPLETED",
"transactionAmountCents": 300,
"originalRequestBase64": "eyJjaGFubmVsIjoiQVBJIiwidHJhbnNhY3Rpb25UeXBlIjoiUFJPVklTSU9OQUxfQ1JFRElUIiwidHJhbnNhY3Rpb25EYXRlVGltZSI6IjIwMjUtMDUtMDUgMDY6MjA6MjUiLCJyZWZlcmVuY2UiOiI2NTMyMzU2NDU2NzEwMCIsInJlYXNvbiI6IlNldHRsZW1lbnQiLCJ0cmFuc2FjdGlvbkFtb3VudCI6eyJhbW91bnQiOiIzMDAiLCJjdXJyZW5jeSI6IlVTRCJ9LCJjcmVkaXRvckFjY291bnQiOnsiaWRlbnRpZmljYXRpb24iOiI4NzQ1NjMyMjIyOTQxNjciLCJpZGVudGlmaWNhdGlvblR5cGUiOiJBQ0NPVU5UX05VTUJFUiJ9fQ==",
"processId": "PL25081102398007"
},
"header": {
"reference": "65323564567100",
"apiKey": "1fee6746331f49c7a9469294611c2ecc",
"signature": "MEUCIFT/hK4/0iV6ifNzjPLbJVltWSqGBcfEDn6T2lSyqpMtAiEA8QCvx4Dg9puhfnF5H6ywGwEjODsPewUVmgP7u0+FMOs="
}
}